Methods and apparatus for controlling wireless network resources for data sessions based on IP address usage

ABSTRACT

One illustrative method of for use in controlling network resources in a wireless network involves assigning, from a pool of IP addresses, a temporary IP address for a mobile station in the wireless network; calculating a ratio or percentage of the number of IP addresses and the total number of IP addresses in the pool; setting a timer value for the mobile station to an initial value that depends on the ratio or percentage of IP addresses such that, as the ratio or percentage increases, the initial value decreases; causing the temporary IP address and the timer value to be sent to the mobile station, which is adapted to register the temporary IP address with a home agent for IP mobility service; and communicating a termination request which terminates the IP mobility service if no request for re-registration is received from the mobile station upon expiration of the timer value.

CROSS-REFERENCE TO RELATED APPLICATION

The present application is a continuation of and claims priority to U.S.non-provisional patent application having application Ser. No.10/883,313 and filing date of 30 Jun. 2004, which is hereby incorporatedby reference herein.

BACKGROUND

1. Field of the Technology

The present application relates generally to wireless communicationnetworks for mobile stations, and more particularly to methods andapparatus for controlling wireless network resources for data sessionsbased on IP address usage.

2. Description of the Related Art

A wireless communication device, such as a mobile station operating in awireless communication network, may provide for both voice telephony andpacket data communications. A mobile station may, for example, becompatible with 3^(rd) Generation (3G) communication standards (such ascdma2000™) and utilize Global System for Mobile Communications (GSM),Time Division Multiple Access (TDMA), or Code Division Multiple Access(CDMA) wireless network technologies.

In a cdma2000™ based wireless network, a mobile station sends andreceives packet data during a Point-to-Point Protocol (PPP) sessionestablished with a Packet Data Serving Node (PDSN). The packet datacould be e-mail, web browser, news and weather data, as a few examples.When an idle mobile station has packet data to send, it initiates a newPPP session with the PDSN. The mobile station may also be directed bythe network to initiate a PPP session when the network has data to send.During initialization of the PPP session, an IP address from a pool ofIP addresses managed by the network is dynamically assigned to themobile station. This assignment may be performed by the PDSN during anInternet Protocol Control Protocol (IPCP) stage in a Simple IP networkas defined in IS-835. In a Mobile IP network, the network assigns an IPaddress as part of Mobile IP registration.

Once PPP connectivity is established between the mobile station and thenetwork, it is generally maintained even when no data is beingcommunicated. The packet data service at the mobile station and networkis assumed to have entered “dormant” state in such case. To reducelatency in exchanging application level data (e.g. to ensure quick dataavailability for an always-on mobile station), it is desirable for thePPP session to be maintained continuously even during periods ofcommunication inactivity. The PPP session may be closed by the PDSN,however, when there is communication inactivity for some relatively longperiod of time and the mobile station is unavailable.

For this purpose, the PDSN maintains a data inactivity timer for eachmobile station involved in a PPP session. The exact behavior depends onwhether the network and the mobile station have a Simple IP connectionor a Mobile IP connection. In a Simple IP network, this timer may bepassed to the mobile station in the form of maximum PPP inactivitytimer. This data inactivity timer is set to an initial value (e.g. 2hours) and is reset for each occurrence of communication activity. If nopacket data is sent or received for the mobile station over the timeperiod defined by the data inactivity timer, the PDSN sends a LinkControl Protocol (LCP) Echo-Request message to the mobile station. Ifthere is no response to the LCP Echo-Request from the mobile stationwithin the time period defined by data inactivity timer, the PDSN closesthe PPP session. The PDSN closes the PPP session as it infers that themobile station is no longer available for communication. In a Mobile IPnetwork, the network can specify a Registration lifetime for a Mobile IPconnection. If the mobile station does not re-register within thenetwork specified lifetime, the PDSN closes the PPP session.

The above-described procedure is useful since it helps release networkresources to make them available to newly-arriving mobile stations. Forexample, the pool of IP addresses is finite and limited—if the entirepool of IP addresses are assigned, the PDSN does not have any availableIP addresses to assign to newly-arriving mobile stations. In addition,the network also maintains information about the binding of the IPaddress to a mobile station, which requires memory.

A problem arises, however, in the selection of a suitable initial valuefor the data inactivity timer. If network operation is very busy (i.e.there is a relatively large number of always-on mobile stationsoperating in the wireless network), a data inactivity timer with arelatively large initial value will not provide for the expeditiousrelease of network resources for newly-arriving mobile stations. Ifnetwork operation is very slow (i.e. there is a relatively small numberof always-on mobile stations operating in the wireless network), a datainactivity timer with a relatively small initial value will result innumerous unnecessary attempts to release network resources and aresulting inefficient use of bandwidth. In addition, the data inactivitytimer may also be selected by the network based on the quality ofservice (QoS) subscribed to.

Accordingly, what are needed are methods and apparatus for controllingwireless network resources for data sessions so as to overcome thedeficiencies in the prior art.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of present application will now be described by way ofexample with reference to attached figures, wherein:

FIG. 1 is a block diagram which illustrates pertinent components of amobile station and a wireless communication network;

FIG. 2 is a more detailed diagram of a preferred mobile station of FIG.1;

FIG. 3 is a flowchart for describing a method of controlling wirelessnetwork resources for data sessions, which includes a function describedin relation to FIG. 4 for obtaining an initial value for a datainactivity timer based on IP address usage;

FIG. 4 is flowchart for describing a method of obtaining the initialvalue for the data inactivity timer based on the IP address usage, whichis used in the flowchart of FIG. 3;

FIG. 5 is a depiction of the wireless communication network with normalIP address usage where an initial value for the data inactivity timer isnormal;

FIG. 6 is a depiction of the wireless communication network with high IPaddress usage where the initial value for the data inactivity timer isrelatively small;

FIG. 7 is a depiction of the wireless communication network with low IPaddress usage where the initial value for the data inactivity timer isrelatively large; and

FIG. 8 is a graph which shows one specific way in which the initialvalue for the data inactivity timer may be related to the IP addressusage.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Methods and apparatus for controlling wireless network resources fordata sessions based on IP address usage are described herein. Oneillustrative method involves identifying IP address usage for mobilestations which operate in a wireless communication network and causing adata inactivity timer of a data session for a mobile station to be setto an initial value that depends on the IP address usage. The datainactivity timer is set to a relatively large value when the IP addressusage is low, but to a relatively small value when the IP address usageis high in order to expeditiously release underutilized networkresources. If the IP address usage changes, the data inactivity timer isdynamically updated. The data session may be a Point-to-Point Protocol(PPP) session for which an IP address is dynamically-assigned to themobile station.

FIG. 1 is a block diagram of a communication system 100, which includesa mobile station 102, which communicates through a wirelesscommunication network 104. Mobile station 102 preferably includes avisual display 112, a keyboard 114, and perhaps one or more auxiliaryuser interfaces (UI) 116, each of which is coupled to a controller 106.Controller 106 is also coupled to radio frequency (RF) transceivercircuitry 108 and an antenna 110. Typically, controller 106 is embodiedas a central processing unit (CPU), which runs operating system softwarein a memory component (not shown). Controller 106 will normally controloverall operation of mobile station 102, whereas signal-processingoperations associated with communication functions are typicallyperformed in RF transceiver circuitry 108. Controller 106 interfaceswith device display 112 to display received information, storedinformation, user inputs, and the like. Keyboard 114, which may be atelephone type keypad or full alphanumeric keyboard, is normallyprovided for entering data for storage in mobile station 102,information for transmission to network 104, a telephone number to placea telephone call, commands to be executed on mobile station 102, andpossibly other or different user inputs.

Mobile station 102 sends communication signals to and receivescommunication signals from network 104 over a wireless link via antenna110. RF transceiver circuitry 108 performs functions similar to those ofa radio network (RN) 128, including for example modulation/demodulationand possibly encoding/decoding and encryption/decryption. It is alsocontemplated that RF transceiver circuitry 108 may perform certainfunctions in addition to those performed by RN 128. It will be apparentto those skilled in art that RF transceiver circuitry 108 will beadapted to particular wireless network or networks in which mobilestation 102 is intended to operate.

Mobile station 102 includes a battery interface 122 for receiving one ormore rechargeable batteries 124. Battery 124 provides electrical powerto electrical circuitry in mobile station 102, and battery interface 122provides for a mechanical and electrical connection for battery 124.Battery interface 122 is coupled to a regulator 126 which regulatespower to the device, providing an output having a regulated voltage V.Mobile station 102 also operates using a memory module 120, such as aSubscriber Identity Module (SIM) or a Removable User Identity Module(R-UIM), which is connected to or inserted in mobile station 102 at aninterface 118.

Mobile station 102 may consist of a single unit, such as a datacommunication device, a cellular telephone, a multiple-functioncommunication device with data and voice communication capabilities, apersonal digital assistant (PDA) enabled for wireless communication, ora computer incorporating an internal modem. Alternatively, mobilestation 102 may be a multiple-module unit comprising a plurality ofseparate components, including but in no way limited to a computer orother device connected to a wireless modem. In particular, for example,in the mobile station block diagram of FIG. 1, RF transceiver circuitry108 and antenna 110 may be implemented as a radio modem unit that may beinserted into a port on a laptop computer. In this case, the laptopcomputer would include display 112, keyboard 114, one or more auxiliaryUIs 116, and controller 106 embodied as the computer's CPU. It is alsocontemplated that a computer or other equipment not normally capable ofwireless communication may be adapted to connect to and effectivelyassume control of RF transceiver circuitry 108 and antenna 110 of asingle-unit device such as one of those described above. Such a mobilestation 102 may have a more particular implementation as described laterin relation to mobile station 202 of FIG. 2.

Mobile station 102 communicates in and through wireless communicationnetwork 104. In the embodiment of FIG. 1, wireless network 104 is aThird Generation (3G) supported network based on Code Division MultipleAccess (CDMA) technologies. In particular, wireless network 104 is acdma2000™ network which includes fixed network components coupled asshown in FIG. 1. Cdma2000™ is a trademark of the TelecommunicationsIndustry Association (TIA). Wireless network 104 of the cdma2000-typeincludes a Radio Network (RN) 128, a Mobile Switching Center (MSC) 130,a Signaling System 7 (SS7) network 140, a Home LocationRegister/Authentication Center (HLR/AC) 138, a Packet Data Serving Node(PDSN) 132, an IP network 134, and a Remote Authentication Dial-In UserService (RADIUS) server 136. SS7 network 140 is communicatively coupledto a network 142 (such as a Public Switched Telephone Network or PSTN),whereas IP network is communicatively coupled to a network 144 (such asthe Internet).

During operation, mobile station 102 communicates with RN 128, whichperforms functions such as call-setup, call processing, and mobilitymanagement. RN 128 includes a plurality of base station transceiversystems that provide wireless network coverage for a particular coveragearea commonly referred to as a “cell”. A given base station transceiversystem of RN 128, such as the one shown in FIG. 1, transmitscommunication signals to and receives communication signals from mobilestations within its cell. The base station transceiver system normallyperforms such functions as modulation and possibly encoding and/orencryption of signals to be transmitted to the mobile station inaccordance with particular, usually predetermined, communicationprotocols and parameters, under control of its controller. The basestation transceiver system similarly demodulates and possibly decodesand decrypts, if necessary, any communication signals received frommobile station 102 within its cell. Communication protocols andparameters may vary between different networks. For example, one networkmay employ a different modulation scheme and operate at differentfrequencies than other networks. The underlying services may also differbased on its particular protocol revision.

The wireless link shown in communication system 100 of FIG. 1 representsone or more different channels, typically different radio frequency (RF)channels, and associated protocols used between wireless network 104 andmobile station 102. An RF channel is a limited resource that must beconserved, typically due to limits in overall bandwidth and a limitedbattery power of mobile station 102. Those skilled in art willappreciate that a wireless network in actual practice may includehundreds of cells depending upon desired overall expanse of networkcoverage. All pertinent components may be connected by multiple switchesand routers (not shown), controlled by multiple network controllers.

For all mobile station's 102 registered with a network operator,permanent data (such as mobile station 102 user's profile) as well astemporary data (such as mobile station's 102 current location) arestored in a HLR/AC 138. In case of a voice call to mobile station 102,HLR/AC 138 is queried to determine the current location of mobilestation 102. A Visitor Location Register (VLR) of MSC 130 is responsiblefor a group of location areas and stores the data of those mobilestations that are currently in its area of responsibility. This includesparts of the permanent mobile station data that have been transmittedfrom HLR/AC 138 to the VLR for faster access. However, the VLR of MSC130 may also assign and store local data, such as temporaryidentifications. HLR/AC 138 also authenticates mobile station 102 onsystem access.

In order to provide packet data services to mobile station 102 in acdma2000-based network, RN 128 communicates with PDSN 132. PDSN 132provides access to the Internet 144 (or intranets, Wireless ApplicationProtocol (WAP) servers, etc.) through IP network 134. PDSN 132 alsoprovides foreign agent (FA) functionality in mobile IP networks as wellas packet transport for virtual private networking. PDSN 132 has a rangeof IP addresses and performs IP address management, session maintenance,and optional caching. RADIUS server 136 is responsible for performingfunctions related to authentication, authorization, and accounting (AAA)of packet data services, and may be referred to as an AAA server.

Those skilled in art will appreciate that wireless network 104 may beconnected to other systems, possibly including other networks, notexplicitly shown in FIG. 1. A network will normally be transmitting atvery least some sort of paging and system information on an ongoingbasis, even if there is no actual packet data exchanged. Although thenetwork consists of many parts, these parts all work together to resultin certain behaviours at the wireless link.

FIG. 2 is a detailed block diagram of a preferred mobile station 202utilized in the present application. Mobile station 202 is preferably atwo-way communication device having at least voice and advanced datacommunication capabilities, including the capability to communicate withother computer systems. Depending on the functionality provided bymobile station 202, it may be referred to as a data messaging device, atwo-way pager, a cellular telephone with data messaging capabilities, awireless Internet appliance, or a data communication device (with orwithout telephony capabilities). Mobile station 202 may communicate withany one of a plurality of base station transceiver systems 200 withinits geographic coverage area.

Mobile station 202 will normally incorporate a communication subsystem211, which includes a receiver 212, a transmitter 214, and associatedcomponents, such as one or more (preferably embedded or internal)antenna elements 216 and 218, local oscillators (LOs) 213, and aprocessing module such as a digital signal processor (DSP) 220.Communication subsystem 211 is analogous to RF transceiver circuitry 108and antenna 110 shown in FIG. 1. As will be apparent to those skilled infield of communications, particular design of communication subsystem211 depends on the communication network in which mobile station 202 isintended to operate.

Mobile station 202 may send and receive communication signals over thenetwork after required network registration or activation procedureshave been completed. Signals received by antenna 216 through the networkare input to receiver 212, which may perform such common receiverfunctions as signal amplification, frequency down conversion, filtering,channel selection, and like, and in example shown in FIG. 2,analog-to-digital (A/D) conversion. A/D conversion of a received signalallows more complex communication functions such as demodulation anddecoding to be performed in DSP 220. In a similar manner, signals to betransmitted are processed, including modulation and encoding, forexample, by DSP 220. These DSP-processed signals are input totransmitter 214 for digital-to-analog (D/A) conversion, frequency upconversion, filtering, amplification and transmission over communicationnetwork via antenna 218. DSP 220 not only processes communicationsignals, but also provides for receiver and transmitter control. Forexample, the gains applied to communication signals in receiver 212 andtransmitter 214 may be adaptively controlled through automatic gaincontrol algorithms implemented in DSP 220.

Network access is associated with a subscriber or user of mobile station202, and therefore mobile station 202 requires a memory module 262, suchas a Subscriber Identity Module or “SIM” card or a Removable UserIdentity Module (R-UIM), to be inserted in or connected to an interface264 of mobile station 202 in order to operate in the network. Sincemobile station 202 is a mobile battery-powered device, it also includesa battery interface 254 for receiving one or more rechargeable batteries256. Such a battery 256 provides electrical power to most if not allelectrical circuitry in mobile station 202, and battery interface 254provides for a mechanical and electrical connection for it. Batteryinterface 254 is coupled to a regulator (not shown) which regulatespower to all of the circuitry, providing an output having a regulatedvoltage V.

Microprocessor 238, which is one implementation of controller 106 ofFIG. 1, controls overall operation of mobile station 202. This controlincludes network selection techniques of the present application.Communication functions, including at least data and voicecommunications, are performed through communication subsystem 211.Microprocessor 238 also interacts with additional device subsystems suchas a display 222, a flash memory 224, a random access memory (RAM) 226,auxiliary input/output (I/O) subsystems 228, a serial port 230, akeyboard 232, a speaker 234, a microphone 236, a short-rangecommunications subsystem 240, and any other device subsystems generallydesignated at 242. Some of the subsystems shown in FIG. 2 performcommunication-related functions, whereas other subsystems may provide“resident” or on-device functions. Notably, some subsystems, such askeyboard 232 and display 222, for example, may be used for bothcommunication-related functions, such as entering a text message fortransmission over a communication network, and device-resident functionssuch as a calculator or task list. Operating system software used bymicroprocessor 238 is preferably stored in a persistent store such asflash memory 224, which may alternatively be a read-only memory (ROM) orsimilar storage element (not shown). Those skilled in the art willappreciate that the operating system, specific device applications, orparts thereof, may be temporarily loaded into a volatile store such asRAM 226.

Microprocessor 238, in addition to its operating system functions,preferably enables execution of software applications on mobile station202. A predetermined set of applications, which control basic deviceoperations, including at least data and voice communicationapplications, will normally be installed on mobile station 202 duringits manufacture. A preferred application that may be loaded onto mobilestation 202 may be a personal information manager (PIM) applicationhaving the ability to organize and manage data items relating to usersuch as, but not limited to, e-mail, calendar events, voice mails,appointments, and task items. Naturally, one or more memory stores areavailable on mobile station 202 and SIM 256 to facilitate storage of PIMdata items and other information.

The PIM application preferably has the ability to send and receive dataitems via the wireless network. In a preferred embodiment, PIM dataitems are seamlessly integrated, synchronized, and updated via thewireless network, with the mobile station user's corresponding dataitems stored and/or associated with a host computer system therebycreating a mirrored host computer on mobile station 202 with respect tosuch items. This is especially advantageous where the host computersystem is the mobile station user's office computer system. Additionalapplications may also be loaded onto mobile station 202 through network,an auxiliary I/O subsystem 228, serial port 230, short-rangecommunications subsystem 240, or any other suitable subsystem 242, andinstalled by a user in RAM 226 or preferably a non-volatile store (notshown) for execution by microprocessor 238. Such flexibility inapplication installation increases the functionality of mobile station202 and may provide enhanced on-device functions, communication-relatedfunctions, or both. For example, secure communication applications mayenable electronic commerce functions and other such financialtransactions to be performed using mobile station 202.

In a data communication mode, a received signal such as a text message,an e-mail message, or web page download will be processed bycommunication subsystem 211 and input to microprocessor 238.Microprocessor 238 will preferably further process the signal for outputto display 222 or alternatively to auxiliary I/O device 228. A user ofmobile station 202 may also compose data items, such as e-mail messages,for example, using keyboard 232 in conjunction with display 222 andpossibly auxiliary I/O device 228. Keyboard 232 is preferably a completealphanumeric keyboard and/or telephone-type keypad. These composed itemsmay be transmitted over a communication network through communicationsubsystem 211.

For voice communications, the overall operation of mobile station 202 issubstantially similar, except that the received signals would be outputto speaker 234 and signals for transmission would be generated bymicrophone 236. Alternative voice or audio I/O subsystems, such as avoice message recording subsystem, may also be implemented on mobilestation 202. Although voice or audio signal output is preferablyaccomplished primarily through speaker 234, display 222 may also be usedto provide an indication of the identity of a calling party, duration ofa voice call, or other voice call related information, as some examples.

Serial port 230 in FIG. 2 is normally implemented in a personal digitalassistant (PDA)-type communication device for which synchronization witha user's desktop computer is a desirable, albeit optional, component.Serial port 230 enables a user to set preferences through an externaldevice or software application and extends the capabilities of mobilestation 202 by providing for information or software downloads to mobilestation 202 other than through a wireless communication network. Thealternate download path may, for example, be used to load an encryptionkey onto mobile station 202 through a direct and thus reliable andtrusted connection to thereby provide secure device communication.

Short-range communications subsystem 240 of FIG. 2 is an additionaloptional component, which provides for communication between mobilestation 202 and different systems or devices, which need not necessarilybe similar devices. For example, subsystem 240 may include an infrareddevice and associated circuits and components, or a Bluetooth™communication module to provide for communication with similarly enabledsystems and devices. Bluetooth™ is a registered trademark of BluetoothSIG, Inc.

FIG. 3 is a flowchart for describing a method of controlling wirelessnetwork resources for data sessions based on IP address usage accordingto the present application. The method of FIG. 3 utilizes a furthermethod described in relation to FIG. 4 to obtain a suitable initialvalue for a data inactivity timer of a data session. The logic describedin relation to FIGS. 3-4 may be performed by a wireless networkcomponent, such as a Packet Data Serving Node (PDSN) (see e.g. FIG. 1)or one or more processors at the PDSN, in association with mobilestations (see e.g. FIGS. 1-2). However, any suitable wireless networkcomponent(s) may be utilized as alternatives. The wireless networkcomponent may include one or more processors, memory, computerinstructions stored in the memory, where the computer instructions areexecutable by the one or more processors to perform the describedmethod. A computer program product may include computer instructionsstored on a storage medium (memory, a floppy disk or CD-ROM) which arewritten in accordance with the described logic. Note that, although theflowchart describes network operation in relation to a single mobilestation, the method of FIGS. 3-4 is performed for a plurality ofalways-on mobile stations operating in the wireless network. Also,although the detailed description primarily relates to PPP sessions in acdma2000™ wireless network, the present techniques may apply to anysuitable data sessions in any suitable wireless network.

Beginning at a start block 302 of FIG. 3, the wireless network componentidentifies whether a new data session is being requested by a mobilestation (step 304). If a new data session is being requested asidentified in step 304, then the wireless network component causes a newdata session to be opened for the mobile station (step 306). In doingthis, an IP address is selected from a pool of IP addresses anddynamically assigned to the mobile station (step 308). The IP addressselected is one that is available and assigned to no other mobilestation in the wireless network. In addition, a data inactivity timerfor the data session is set to its initial value and started (step 310).The initial value is determined by a function 350 which will bedescribed later below. After step 310, the flowchart repeats startingagain at step 304.

If no request for a new data session is made at step 304, the wirelessnetwork component identifies whether a data session termination requestfrom the mobile station is received (step 312). If a data sessiontermination request is received as identified in step 312, then thewireless network component causes the data session for the mobilestation to be closed (step 314). In doing this, a previously assigned IPaddress of the mobile station is deassigned from the mobile station andreturned to the pool of IP addresses managed by the wireless network(step 316). This IP address is thereby made available for assignment toother mobile stations in the wireless network. In addition, the datainactivity timer for the data session is stopped as the data session isclosed (step 318). After step 318, the flowchart repeats starting againat step 304.

If no data session termination request is received at step 312, thewireless network component identifies whether any communication activityfor the mobile station has occurred in the data session (step 320). Ifso, the data inactivity timer is reset to its initial value (step 322).This initial value is determined by function 350 as in step 310, whichwill be described later below. After step 322, the flowchart repeatsstarting again at step 304. If no communication activity for the mobilestation occurred as identified in step 320, the wireless networkcomponent identifies whether the data inactivity timer of the datasession for the mobile station has expired (step 324). If the datainactivity timer has not expired at step 324, then the flowchart repeatsstarting again at step 304.

If the data inactivity timer has expired at step 324, then the wirelessnetwork component causes a message to be sent to the mobile station(step 326). This message is intended to solicit a reply from the mobilestation. The message may be, for example, a Link Control Protocol (LCP)message having an Echo-Request code (i.e. an Echo-Request message).Thereafter, the wireless network component identifies whether a replymessage from the mobile station is received in response to the message(step 328). The reply message may be an LCP message having an Echo-Replycode (i.e. an Echo-Reply message). Typically, the wireless networkcomponent waits to receive an Echo-Reply message from the mobile stationwithin a predetermined time period. If a reply message is received atstep 328, then the data inactivity timer is reset to its initial value(step 322). Again, the initial value is determined by function 350 whichwill be described later below. If no response message is received atstep 328, then the data session for the mobile station is closed (step314), the previously assigned IP address of the mobile station isdeassigned from the mobile station and returned to the pool of IPaddresses managed by the wireless network (step 316), and the datainactivity timer for the data session is stopped (step 318). Note thatthe wireless network component may perform a plurality of retries when areply message is not received from the mobile station, before itdetermines that the mobile station is unavailable. The flowchart repeatsstarting again at step 304.

As apparent, the data session will be closed when there is communicationinactivity for a relatively long period of time and the mobile stationis unavailable. It is for this purpose that the data inactivity timer isstarted and utilized in step 310, it being useful since it helps releasenetwork resources to make them available to newly-arriving mobilestations. A problem arises, however, in the selection of a suitableinitial value for the data inactivity timer. If network operation isvery busy (i.e. there is a relatively large number of always-on mobilestations operating in the wireless network), a data inactivity timerwith a relatively large initial value will not provide for theexpeditious release of network resources for newly-arriving mobilestations. If network operation is very slow (i.e. there is a relativelysmall number of always-on mobile stations operating in the wirelessnetwork), a data inactivity timer with a relatively small initial valuewill result in numerous unnecessary attempts to release networkresources which is an inefficient use of bandwidth.

Advantageously, techniques of the present application help alleviatethese concerns. Function 350 is utilized to obtain a suitable initialvalue for the data inactivity timer in steps 310 and 322 of FIG. 3; theinitial value is variable and depends on the current IP address usage.This function 350 is described generally in relation to the flowchart ofFIG. 4. Beginning at a function start block 350 of FIG. 4, IP addressusage is identified for mobile stations operating in the wirelesscommunication network (step 404). Next, an initial value that depends onthe IP address usage is obtained for the data inactivity timer (step406). Simply put, the initial value obtained in step 406 generallyincreases/decreases with increasing/decreasing availability of IPaddresses. For example, the data inactivity timer may be set to a firstinitial value based on a first IP address usage or a second initialvalue based on a second IP address usage, where the second IP addressusage is greater than the first IP address usage and the second initialvalue is less than the first initial value. The function ends at afinish block 408.

The IP address usage in step 404 may be identified in a number ofdifferent ways. For example, the IP address usage may be identifiedbased on a ratio or percentage of a number of assigned (or unassigned)IP addresses to the total number of IP addresses available (e.g. 20%,50%, or 80% availability). On the other hand, the IP address usage maybe identified by the number of assigned (or unassigned) IP addresses(e.g. 1000, 2000, or 3000 IP addresses available) where the total numberof IP addresses available is assumed or understood. The IP address usagemay alternatively be identified based on other suitable networkindications, such as a number of opened data sessions (e.g. PPPsessions) for mobile stations operating in the wireless network.

In step 406, a suitable initial value for the data inactivity timer isobtained based on the IP address usage previously identified in step404. This initial value may be obtained in a number of different ways.For example, the initial value may be based on a continuous or discretefunction of IP address usage. This function may be, for example, asimple linear function with a negative slope (e.g. x-axis=IP addressusage, y-axis=initial value). However, any suitable function orcharacteristic may be utilized. In a more simplified case, the initialvalue is selected from only two or more possible values based on the IPaddress usage. In this case, if a ratio or percentage of IP addressusage is utilized for the technique, this ratio or percentage may becompared to a predetermined threshold ratio or percentage value. If theratio or percentage is within a limit defined by the predeterminedthreshold value, then a first initial value is obtained; otherwise ifthe ratio or percentage is outside the limit defined by thepredetermined threshold value, then a second initial value is obtained.As another example, if a number of unassigned or assigned IP addressesis utilized for the technique, this number may be compared to apredetermined threshold number. If the number is within a limit definedby the predetermined threshold number, then a first initial value isobtained; otherwise if the number is outside the limit defined by hepredetermined threshold number, then a second initial value is obtained.

FIG. 5 is a depiction of the wireless communication network with“normal” IP address usage which corresponds to an initial value that is“normal”. In this illustrative example, a plurality of mobile stations510 are operating in the wireless network. These mobile stations 510 are“always-on” devices which have data sessions established with thewireless network. PDSN 132 manages an IP address pool 504 having a totalnumber of ten (10) IP addresses available. In actual practice, the totalnumber of IP addresses available is much larger but a smaller number isutilized for clarity of the example. PDSN 132 facilitates the dynamicassignment of the IP addresses in IP address pool 504 for mobilestations utilizing a data session (e.g. PPP session). In the exampleshown in FIG. 5, five (5) mobile stations 510 are currently operating inthe wireless network. Accordingly, five (5) IP addresses of IP addresspool 504 are assigned to the five (5) mobile stations 510 as depicted inan “assigned” address pool portion 506. On the other hand, five (5) IPaddresses of IP address pool 504 are not assigned to any mobile stationas depicted in an “unassigned” address pool portion 508. Thus, the IPaddress usage in FIG. 5 based on the ratio of assigned IP addresses tothe total number of available IP addresses is 50%. Since this is deemedto be normal traffic, the initial value obtained is relatively normaland ordinary (e.g. 2 hours).

FIGS. 6 and 7 are depictions of the same wireless network of FIG. 5 with“high” and “low” IP address usages, respectively. In the example shownin FIG. 6, eight (8) always-on mobile stations 610 are currentlyoperating in the wireless network. Accordingly, eight (8) IP addressesof IP address pool 504 are assigned to the eight (8) mobile stations 610as depicted in assigned address pool portion 506. On the other hand, two(2) IP addresses of IP address pool 504 are not assigned to any mobilestation as depicted in unassigned address pool portion 508. Thus, the IPaddress usage in FIG. 6 based on the ratio of assigned IP addresses tothe total number of available IP addresses is 80%. Since this is deemedto be relatively heavy traffic, the initial value obtained is relativelysmall (e.g. 1 hour). In the example shown in FIG. 7, only two (2)always-on mobile stations 710 are currently operating in the wirelessnetwork. Accordingly, two (2) IP addresses of IP address pool 504 areassigned to the two (2) mobile stations 710 as depicted in assignedaddress pool portion 506. On the other hand, eight (8) IP addresses ofIP address pool 504 are not assigned to any mobile station as depictedin unassigned address pool portion 508. Thus, the IP address usage inFIG. 7 based on the ratio of assigned IP addresses to the total numberof available IP addresses is 20%. Since this is deemed to be relativelylight traffic, the initial value obtained is relatively large (e.g. 3hours).

As described earlier above, the initial value may be a continuous ordiscrete function of IP address usage. A more particular way ofobtaining the initial value is now described. The initial value may berepresented as:Initial Value=f(C _(IP))where C_(IP) is IP address usage based on a ratio of assigned IPaddresses to the total number of IP addresses available (0=all IPaddresses available and unassigned, 1=IP address capacity limit). Thefunction for obtaining the initial value may be expressed as:Initial Value=T _(const) +T _(offset)where T_(const) is a fixed implementation-dependent constant (e.g. 2hours) and T_(offset) depends on the IP address pool usage. T_(offset)is defined in Table 1 below and in a graph 802 of FIG. 8.

TABLE 1 Example of Possible Values for T_(offset). IP Pool CapacityClass T_(offset) Light Traffic (e.g. C_(IP) <= 0.2) +c1 T_(const) NormalTraffic (e.g. 0.2 < C_(IP) < 0.8) 0 Heavy Traffic (e.g. C_(IP) >= 0.8)−c2 T_(const)The PDSN utilizes this function for finding the initial value of thedata inactivity timer. Thus, the initial value can be obtained byexecuting a function of IP address usage.

As described above, IP address usage for mobile stations is identifiedand a data inactivity timer of a data session for a mobile station isset to an initial value that depends on the IP address usage. The datainactivity timer is utilized to terminate the data session whencommunication inactivity for the data session persists over a timeperiod defined by the data inactivity timer. The data inactivity timeris set to a relatively large value when the IP address usage is low, butto a relatively small value when the IP address usage is high in orderto expeditiously release underutilized network resources. The datainactivity timer is run during time periods of communication inactivityin the data session, but is reset to the initial value for occurrencesof communication activity in the data session. The data session may be aPoint-to-Point Protocol (PPP) session for which an IP address isdynamically-assigned to the mobile station. If the data inactivity timerexpires, an Echo-Request message is sent to the mobile station. If noEcho-Reply message is received from the mobile station in response tothe Echo-Request message, the data session is terminated and thedynamically-assigned IP address of the mobile station is deassigned andmade available for assignment to other mobile stations.

The above-techniques may also be applied to a Mobile IP (MIP)Registration Lifetime. To explain, mobile IP provides a mechanism whichallows a mobile station to change its point of attachment to theInternet without changing its IP address. A Home Agent (HA) and ForeignAgent (FA) are two routers that are utilized to manage such IP mobility.The mobile station keeps both a home IP address as well as a Care-ofAddress (COA) while it is away from its home network. The mobile stationreceives its COA during an Agent Discovery procedure when attached to awireless network other than its home network. The mobile stationregisters the COA with the Home Agent through an Agent Advertisementprocedure. Data packets sent to the home IP address of the mobilestation are thereafter intercepted by the Home Agent, tunneled by theHome Agent to the COA of the mobile station, received at the tunnelendpoint (i.e. the Foreign Agent), and finally delivered to the mobilestation.

The Registration Lifetime is the longest duration of time that theForeign Agent is willing to accept any registration request from themobile station. The Foreign Agent communicates the Registration Lifetimeto the mobile station during the Agent Discovery procedure using anAgent Advertisement message. Upon expiration of the RegistrationLifetime, the mobile station sends an MIP re-registration message to thenetwork. The PDSN sends a LCP Terminate-Request to the mobile station ifno re-registration is received upon expiration of the RegistrationLifetime.

Using techniques of the present application, the wireless network may beoperative to increase or decrease the initial value of the MIPRegistration Lifetime based on network traffic as described above. Usingsuch techniques, the network detects unreachable mobile stations moreexpeditiously using a reduced Registration Lifetime so that IP addresspool space is freed up during heavy traffic conditions. Conversely,during light traffic conditions, an increased Registration Lifetimeeliminates unnecessary MIP registration messages in order to savebattery life of the mobile station and network capacity. Note that theMIP Registration Lifetime in the Agent Advertisement should be smallerthan the value for the data inactivity timer in use for the underlyingPPP session.

Methods and apparatus for controlling wireless network resources fordata sessions have been described. One illustrative method involves thesteps of identifying IP address usage for mobile stations operating in awireless communication network and causing a data inactivity timer of adata session for a mobile station to be set to an initial value thatdepends on the IP address usage. The data inactivity timer is set to arelatively large value when the IP address usage is low, but to arelatively small value when the IP address usage is high in order toexpeditiously release underutilized network resources. The data sessionmay be Point-to-Point Protocol (PPP) session for which an IP address isdynamically-assigned to the mobile station. The method may include thefurther steps of running the data inactivity timer during time periodsof communication inactivity in the data session for the mobile stationhaving an IP address dynamically-assigned thereto; resetting the datainactivity timer to the initial value for occurrences of communicationactivity in the data session; and if the data inactivity timer expires:causing a message to be sent to the mobile station and, if no replymessage is received from the mobile station in response to the message,then causing the data session to be terminated and thedynamically-assigned IP address of the mobile station to be deassignedand made available for assignment to another mobile station. The methodmay involve the further step of obtaining an initial value by executinga function of the IP address usage. The act of identifying the IPaddress usage may involve the further acts of identifying a number ofassigned or unassigned IP addresses; and comparing the number ofassigned or unassigned IP addresses with a threshold value.Alternatively, the act of identifying the IP address usage may involvethe further acts of identifying a ratio or percentage of assigned orunassigned IP addresses to a total number of IP addresses; and comparingthe ratio or percentage to a threshold value.

A more specific method of controlling wireless network resources forPoint-to-Point Protocol (PPP) sessions involves the steps of identifyingIP address usage for mobile stations which operate in a wirelesscommunication network; and causing a data inactivity timer of the PPPsession for a mobile station to be set to one of a first initial valuebased on a first IP address usage and a second initial value based on asecond IP address usage, where the second IP address usage is greaterthan the first IP address usage and the second initial value is lessthan the first initial value, and where the data inactivity timer isutilized to terminate the PPP session when data inactivity for the PPPsession persists over a time period defined by the data inactivitytimer.

A wireless network component of the present application may include aprocessor; memory; computer instructions stored in the memory; where thecomputer instructions are executable by the processor for controllingwireless network resources for data sessions by the described method(s).The wireless network component may be part of or at the PDSN. A computerprogram product of the present application may include a storage medium;computer instructions stored in the storage medium; where the computerinstructions are executable by a processor for controlling wirelessnetwork resources for data sessions by the described method(s).

One specific related method of controlling wireless network resourcesfor communications includes the acts of identifying IP address usage formobile stations which operate in a wireless communication network; andcausing a registration lifetime timer for a mobile station to be set toan initial value that depends on the IP address usage. The registrationlifetime timer is utilized to terminate a data session for the mobilestation after its expiration. The registration lifetime timer is set toone of a first initial value based on a first IP address usage and asecond initial value based on a second IP address usage, such that thesecond IP address usage is, greater than the first IP address usage andthe second initial value is less than the first initial value. Thismethod is also implemented with computer instructions stored in memory.

The above-described embodiments of the present application are intendedto be examples only. Those of skill in the art may effect alterations,modifications and variations to the particular embodiments withoutdeparting from the scope of the application. The invention describedherein in the recited claims intends to cover and embrace all suitablechanges in technology.

What is claimed is:
 1. A method for use in controlling network resourcesin a wireless network for a mobile station operating for communicationsin a data session, the data session being associated with a datainactivity timer for terminating the data session, the methodcomprising: assigning, from a pool of IP addresses utilized in thewireless network, a temporary IP address for the mobile station in thewireless network, the mobile station having a home IP address associatedwith a home network; calculating a ratio or percentage of the number ofIP addresses assigned to mobile stations in the wireless network and thetotal number of IP addresses in the pool; setting a registrationduration timer value for the mobile station to an initial value that isless than the data inactivity timer of the data session and depends onthe ratio or percentage of IP addresses such that, as the ratio orpercentage increases, the initial value decreases; causing the temporaryIP address and the registration duration timer value to be sent to themobile station, wherein the mobile station is configured to register thetemporary IP address with a home agent in the home network for IPmobility service, so that data packets of the data session which arcaddressed to the home IP address are tunneled to the temporary IPaddress of the mobile station in the wireless network; and communicatinga termination request which terminates the IP mobility service when norequest for re-registration is received from the mobile station uponexpiration of the registration duration timer value.
 2. The method ofclaim 1, wherein the data session comprises a Point-to-Point Protocol(PPP) session.
 3. The method of claim 1, wherein the temporary IPaddress comprises a Care-Of Address (COA).
 4. The method of claim 1,further comprising: wherein the registration duration timer value iscommunicated to the mobile station from a foreign agent via the wirelessnetwork; and wherein the registration duration timer value defines aduration of time that the foreign agent will accept the request forre-registration from the mobile station.
 5. A network component,comprising: a processor; memory; computer instructions stored in thememory; the computer instructions being executable by the processor forcontrolling network resources in a wireless network for a mobile stationoperating for communications in a data session, the data session beingassociated with a data inactivity timer for terminating the datasession, the computer instructions being further executable for:assigning, from a pool of IP addresses, a temporary IP address for themobile station in the wireless network, the mobile station having a homeIP address associated with a home network; calculating a ratio orpercentage of the number of IP addresses assigned to mobile stations inthe wireless network and the total number of IP addresses in the pool;setting a registration duration timer value for the mobile station to aninitial value that is less than the data inactivity timer of the datasession and depends on the ratio or percentage of IP addresses suchthat, as the ratio or percentage increases, the initial value decreases;causing the temporary IP address and the registration duration timervalue to be sent to the mobile station, wherein the mobile station isconfigured to register the temporary IP address with a home agent in thehome network for IP mobility service, so that data packets of the datasession which are addressed to the home IP address are tunneled to thetemporary IP address of the mobile station in the wireless network; andcommunicating a termination request which terminates the IP mobilityservice when no request for re-registration is received from the mobilestation upon expiration of the registration duration timer value.
 6. Thenetwork component of claim. 5, wherein the data session comprises aPoint-to-Point Protocol (PPP) session.
 7. The network component of claim5, wherein the temporary IP address comprises a Care-Of Address (COA).8. The network component of claim 5, wherein the computer instructionsare further executable by the processor for: setting and running theregistration duration timer value; and causing the termination requestfor the data session to be communicated if no request forre-registration is received from the mobile station upon expiration ofthe registration duration timer value.
 9. The network component of claim5, wherein the registration duration timer value is communicated to themobile station by a foreign agent via the wireless network; and whereinthe registration duration timer value defines a duration of time thatthe foreign agent will accept the request for re-registration from themobile station.
 10. A method for use in a mobile station for controllingnetwork resources while operating for communications in a data session,the data session being associated with a data inactivity timer utilizedfor terminating the data session, the mobile station having a home IPaddress associated with a home network, the method comprising:receiving, via an alternative network, assignment of a temporary IPaddress from a pool of IP addresses utilized in the alternative network;receiving, via the alternative network, a registration duration timervalue having an initial value that is less than the data inactivitytimer of the data session and depends on a calculated ratio orpercentage of the number of IP addresses assigned to mobile stations inthe alternative network and the total number of IP addresses in thepool, such that as the ratio or percentage increases, the initial valuedecreases; registering, via the alternative network, the temporary IPaddress with a home agent in the home network for IP mobility service;receiving, via the alternative network using the IP mobility service,data packets originally addressed to the home IP address but tunneled tothe temporary IP address of the mobile station in the alternativenetwork; for continuing the IP mobility service: prior to expiration ofthe registration duration timer value, communicating to the alternativenetwork a request for re-registration; and for terminating the IPmobility service: upon expiration of the registration duration timervalue, refraining from communicating to the alternative network arequest for re-registration, thereby invoking a termination requestwhich terminates the IP mobility service.
 11. The method of claim 10,wherein the data session comprises a Point-to-Point Protocol (PPP)session.
 12. The method of claim 10, wherein the temporary IP addresscomprises a Care-Of Address (COA).
 13. The method of claim 10, furthercomprising: wherein the registration duration timer value iscommunicated to the mobile station from a foreign agent via thealternative network; and wherein the registration duration timer valuedefines a duration of time that the foreign agent will accept therequest for re-registration from the mobile station.
 14. A mobilestation, comprising: a controller; a wireless transceiver coupled to thecontroller; the controller being configured to control network resourceswhile the mobile station operates for communications in a data session,the data session being associated with a data inactivity tinier forterminating the data session, the mobile station having a home IPaddress associated with a home network, the controller being furtherconfigured to; receive, from an alternative network via the wirelesstransceiver, a temporary IP address from a pool of IP addresses utilizedin the alternative network; receive, from the alternative network viathe wireless transceiver, a registration duration timer value having aninitial value that is less than the data inactivity timer of the datasession and depends on a calculated ratio or percentage of the number ofIP addresses assigned to mobile stations in the alternative network andthe total number of IP addresses in the pool, such that as the ratio orpercentage increases, the initial value decreases; register, from thealternative network via the wireless transceiver, the temporary IPaddress with a home agent in the home network for IP mobility service;receive, from the alternative network via the wireless transceiver,using the IP mobility service, data packets originally addressed to thehome IP address but tunneled to the temporary IP address of the mobilestation in the alternative network; for continuing the IP mobilityservice: prior to expiration of the registration duration timer value,communicate to the alternative network via the wireless transceiver arequest for re-registration; and for terminating the IP mobilityservice: upon expiration of the registration duration timer value,refrain from communicating to the alternative network a request forre-registration, thereby invoking a termination request which terminatesthe IP mobility service.
 15. The mobile station of claim 14, wherein thedata session comprises a Point-to-Point Protocol (PPP) session.
 16. Themobile station of claim 14, wherein the temporary IP address comprises aCare-Of Address (COA).
 17. The mobile station of claim 14 wherein theregistration duration timer value is communicated to the mobile stationfrom a foreign agent via the alternative network, and the registrationduration timer value defines a duration of time that the foreign agentwill accept the request for re-registration from the mobile station.